
"""
冒泡排序
什么是冒泡排序：就像水慢慢烧开，气泡从下往上越来越大那样，第一次循环都把n个元素中最大的元素移动至最后位置，第二次从前 n-1 个位置中找出最大元素放在最后，重复执行，直到最后结果全部有序。
时间复杂度：
最小时间复杂度：很好计算，最好的情况就是数据一开始就是有序的，因此一次冒泡即可完成，时间复杂度为 O(n)
最大时间复杂度：也很好计算，最坏的情况就是数据一开始就是倒序的，因此进行 n-1 次冒泡即可完成，时间复杂度为 O(n^2)
"""

import random

#随机生成一个列表
def generator():
    random_date = []
    for i in range(0,20):
        random_date.append(random.randint(0,9999))

    return random_date

def bubble_sort(data_list):
    lenght = len(data_list)
    for i in range(0,lenght):
        for j in range(i+1,lenght):
            if data_list[i] > data_list[j]:
                data_list[i],data_list[j] = data_list[j],data_list[i]
    return data_list

if __name__ == '__main__':
    print(generator())
    print(bubble_sort(generator()))
